perm filename RANDOM.SAI[SYS,BGB] blob sn#036859 filedate 1973-04-23 generic text, type T, neo UTF8
COMMENT ⊗   VALID 00002 PAGES 
RECORD PAGE   DESCRIPTION
 00001 00001
 00002 00002	ENTRY RANDOM
 00003 ENDMK
⊗;
ENTRY RANDOM;
BEGIN	"RANDOM"
	SAFE INTEGER ARRAY RAN5[0:255];
	INTEGER RAN1,RAN2,RAN3,RAN4,INITFLG;
SIMPLE PROCEDURE RANDOMI;
BEGIN	"INIT"
	INTEGER I;
	RAN1←1;
	RAN2←3; 
	FOR I←0 STEP 1 UNTIL 255 DO
	RAN5[I]←RAN2←(RAN2*3)MOD 2↑31 ;
	INITFLG	←	TRUE;
END	"INIT";

SIMPLE INTERNAL REAL PROCEDURE RANDOM;
BEGIN	"RANDOM"
	IF INITFLG THEN ELSE RANDOMI;
	START_CODE MOVE 1,RAN2;MULI 1,1756;IDIVI 2,8191;MOVEM 3,RAN1;END;
COMMENT	RAN1←(RAN2*1756) MOD 8191;
	RAN3←RAN1 DIV 32;
	RAN4←RAN5[RAN3];
	RAN2←RAN5[RAN3]←(RAN2*3)MOD 2↑31;
	RETURN(RAN4/2↑31)
END	"RANDOM";

END	"RANDOM"